package br.com.projeto.controller;

import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.Set;
import java.util.TreeSet;

public class NumerosAleatorios {
	
	private final int NUMERO_MAXIMO = 60;
	private final int NUMERO_MINIMO = 1;
	private final int QUANTIDADE = 6;
	
	private Random random;
	
	public NumerosAleatorios() {
		this.random = new Random(System.currentTimeMillis());
	}
	
	public final List<Integer> sortearSequencia() {
		Set<Integer> sequencia = new TreeSet<Integer>();
		List<Integer> resultado = new ArrayList<Integer>();
		
		do {
			sequencia.add(this.sortearNumero());
		} while (sequencia.size() < QUANTIDADE);

		for (int i = 0; i < QUANTIDADE; i++) {
			resultado.add((Integer)sequencia.toArray()[i]);
		}
		return resultado;
	}
	
	private int sortearNumero() {
		int numero = 0;
		do {
			numero = Math.abs((this.random.nextInt() % NUMERO_MAXIMO) + 1);
		} while (numero < NUMERO_MINIMO);
		return numero;
	}
}